package com.vrv.app.cyberspace.modules.sys.entity;

import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import org.hibernate.validator.constraints.NotBlank;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * <p>
 * 
 * </p>
 *
 * @author sm
 * @since 2017-12-15
 */
@TableName("TODAY_BULLETIN_TABLE")
public class TodayBulletinTable extends Model<TodayBulletinTable> {

    private static final long serialVersionUID = 1L;

	@TableId(value="id", type= IdType.AUTO)
	private Integer id;
    /**
     * 今日快报名称[注：格式-今日快报xxxx年xx月xx日]
     */
	private String name;
    /**
     * 填报人ID
     */
	private String createUserID;
    /**
     * 创建时间
     */
	private Date createTime;
    /**
     * 批准人ID
     */
	@NotBlank(message="approvalUserID不能为空")
	private String approvalUserID;
    /**
     * 审核时间
     */
	private Date updateTime;
    /**
     * 在办/办结状态[0-初始状态；1--请示领导；2--同意；退回就回到初始状态；领导同意后就进入办结]
     */
	private Integer status;

	@TableField(exist = false)
	private List<BaseTable> infos;

	@TableField(exist = false)
	private UserTable createUserInfo;

	@TableField(exist = false)
	private UserTable approvalUserInfo;

	@TableField(exist = false)
	private List<BulletinApprovalTable> approvalList;


	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getCreateUserID() {
		return createUserID;
	}

	public void setCreateUserID(String createUserID) {
		this.createUserID = createUserID;
	}

	public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	public String getApprovalUserID() {
		return approvalUserID;
	}

	public void setApprovalUserID(String approvalUserID) {
		this.approvalUserID = approvalUserID;
	}

	public Date getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}

	public Integer getStatus() {
		return status;
	}

	public void setStatus(Integer status) {
		this.status = status;
	}

	@Override
	protected Serializable pkVal() {
		return this.id;
	}

	@Override
	public String toString() {
		return "TodayBulletinTable{" +
			", id=" + id +
			", name=" + name +
			", createUserID=" + createUserID +
			", createTime=" + createTime +
			", approvalUserID=" + approvalUserID +
			", updateTime=" + updateTime +
			", status=" + status +
			"}";
	}

	public List<BaseTable> getInfos() {
		return infos;
	}

	public void setInfos(List<BaseTable> infos) {
		this.infos = infos;
	}

	public UserTable getCreateUserInfo() {
		return createUserInfo;
	}

	public void setCreateUserInfo(UserTable createUserInfo) {
		this.createUserInfo = createUserInfo;
	}

	public UserTable getApprovalUserInfo() {
		return approvalUserInfo;
	}

	public void setApprovalUserInfo(UserTable approvalUserInfo) {
		this.approvalUserInfo = approvalUserInfo;
	}

	public List<BulletinApprovalTable> getApprovalList() {
		return approvalList;
	}

	public void setApprovalList(List<BulletinApprovalTable> approvalList) {
		this.approvalList = approvalList;
	}
}
